﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SharkOS.LaConsole;

namespace SharkOS.Core.Ecran
{
    class GestionEcran
    {
        private Cosmos.Hardware.VGAScreen vgascrean = new Cosmos.Hardware.VGAScreen();

        private byte[] Noir = { 0, 0, 0 };
        private byte[] Blanc = { 255, 255, 255 };
        private byte[] Bureau = { 30, 175, 206 };
        public static byte[] Titre = { 27, 188, 112 };

        public enum couleur
        {
            Noir = 0x0,
            Blanc = 0x1,
            Bureau = 0x2
        };

        public enum Résolution
        {
           résol1 = 320*200,
           résol2 = 1280*1024
        };
        public int hauteur = 200;
        public int largeur = 320;
        public void Depart()
        {

            vgascrean.SetPalette(0x0, Noir);
            vgascrean.SetPalette(0x1, Blanc);
            vgascrean.SetPalette(0x2, Bureau);
            vgascrean.SetPalette(0x3, Titre);

                vgascrean.SetMode320x200x8();
                vgascrean.Clear(0x0);

                console.PrintLineText("Erreur dans la résolution de l'écran !", ConsoleColor.Red);

        }
        public void EffaceAvecCouleurSystème(couleur color)
        {
            vgascrean.Clear((int)color);
        }
        public void Efface(int color)
        {
            vgascrean.Clear(color);
        }
        public void SetPixel320x200x8(uint x, uint y, uint c)
        {
            vgascrean.SetPixel320x200x8(x, y, c);
        }
        public uint GetPixel320x200x8(uint x, uint y)
        {
            return vgascrean.GetPixel320x200x8(x, y);
        }
    }
}
